
var express = require('express');
//创建路由对象
var router = express.Router();


//引进博客分类数据模型，读取数据返回前端
var Category = require('../models/Category.js');
var User = require('../models/User');
//引入博文内容数据模型
var Content = require('../models/Content');

/*
* 处理通用数据
**/
var data;
router.use(function (req,res,next) {
    data = {
        userInfo:req.userInfo,
        categories:[]
    };
    //读取分类数据
    Category.find().then(function (categories) {
        data.categories = categories;
        next()
    })
});

/*首页
* */
router.get('/',function (req,res,next) {
    /*指定模板，并把cookies用户信息分配给模板；存在为已登录
    console.log(req.userInfo);
    读取博客所有分类数据;并返回给前端
    读取内容数据返回前端*/
    data.page=Number( req.query.page || 1); //分页参数
    data.limit = 5;//限制获取的数据条数
    data.pages = 0;//总页数
    data.count = 0;//总条数
    data.category = req.query.category || '' ;//分类ID
    //要忽略的条数
    var skip = (data.page - 1)*data.limit;


    var where = {};
    if (data.category){
        where.category = data.category
    };
    //读取内容数据
    //where()//根据参数进行条件查找
    Content.where(where).count().then(function (count) {
        data.count = count;
        //总页数
        data.pages = Math.ceil(data.count/data.limit);
        //取值不能超过pages
        data.page = Math.min(data.page,data.pages);
        //取值不能小于1
        data.page = Math.max(data.page, 1);
        return Content.where(where).find().limit(data.limit).skip(skip).populate(['category','user']).sort({
           addTime:-1
        });
    }).then(function (contents) {
        data.contents = contents;
        //console.log(data);
        res.render('main/index.html',data)
    });
});

//阅读全文

router.get('/view',function (req,res) {
    //获取内容id
   var contentid = req.query.contend;
   //读取内容
    Content.findOne({
        _id:contentid
    }).then(function (content) {
        data.content = content;
        //console.log(data)
        //访问数
        content.views++;
        //保存
        content.save();
        res.render('main/view.html',data)
    })

});



//返回
module.exports = router;